ESPeciaL: an embedded systems programming language

نویسندگان

  • Christopher Métrailler
  • Pierre-André Mudry
چکیده

The advent of off-the-shelf programmable embedded systems such as Arduino enables people with little programming skills to interact with the real-world using sensors and actuators. In this paper, we propose a novel approach aimed at simplifying the programming of embedded systems based on the dataflow paradigm. Named ESPeciaL, this programming framework removes the need of low-level programming in C/C++, as the application is written by connecting blocks that produce and consume data. Thus, an embedded application can be described in terms of ready-to-use blocks that correspond to the various micro-controller peripherals and to program function (multiplexers, logic gates, etc.). The user application itself is written as an embedded Scala DSL. From that code, the ESPeciaL compiler then generates the corresponding C++ code which can be tailored – using different back-ends – to match different embedded systems or a QEMU-based simulation environment. To demonstrate the validity of the approach, we present a typical embedded systems application implemented using ESPeciaL.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Blueprint for an Embedded Systems Programming Language

Embedded systems have become ubiquitous and are found in numerous application domains such as sensor networks, medical devices, and smart appliances. Software flaws in such systems can range from minor nuisances to critical security failures and malfunctions. Additionally, the computational power found in these devices has seen tremendous growth and will likely continue to advance. With increas...

متن کامل

Specification of Embedded Systems Environment Behaviour with Alvis Modelling Language

Alvis, a modelling language for concurrent systems, combines the advantages of formal methods and practical modelling languages. Even though Alvis has its origins in process algebras, instead of algebraic equations, it uses a high level programming language for the description of agents behaviour and a graphical language for the modelling of interconnections among agents. An Alvis model can be ...

متن کامل

Digital Sound Recorder: A case study on designing embedded systems using the UML notation

This document is an example of the object-oriented analysis and design of an embedded system using the Unified Modelling Language (UML). The analysed system is a digital sound recorder, or Dictaphone. The design has been implemented using an embedded processor and the C++ programming language.

متن کامل

Modelling concurrent systems with Alvis

Alvis is a new modeling language for developing concurrent (embedded) systems. The language is being developed within the confines of the Alvis project at AGH University of Science and Technology, Department of Automatics. The Alvis language combines hierarchical graphical modelling with a high level programming language. Moreover, a formal verification of a model, based on an LTS graph (Labell...

متن کامل

Using Protocol Buffers for Resource-Constrained Distributed Embedded Systems

Protocol Buffers are a widely used, robust and efficient data interchange format contributed and maintained by Google. Specifications of custom messages, fields and enumerations are comfortably defined in the Proto language and then compiled to a large variety of target programming languages like C++, Java and Python. This makes Protocol Buffers an excellent choice when heterogeneous system pla...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2015